<template>

</template>

<script setup>

import {onMounted} from 'vue' ;
import API from "../api/index.js";
import {useRoute, useRouter } from 'vue-router' ;
import store from "../store";

const route = useRoute();
const router = useRouter();

onMounted(() => {
  // 直接调用接口到 服务器中，完成 支付宝登录
  API.authorizeCodeToToken(route.query).then(ret => {
    if (ret.status) { // 返回的是 访问令牌和刷新令牌
      let rememberMe = atob(route.query.state);
      // btoa 函数 实现 base64 编码  atob 实现 base64解码
      store.commit("storeUserAndToken" ,{
        user: ret.data.user, token: ret.data.accessToken, exp: ret.data.exp,
        refresh: ret.data.refreshToken, remember: rememberMe === "on" ? true : false
      });
      // 登录成功、跳转到系统首页
      router.push("/");
    }else if (ret.code === 32000) { // 说明要跳转到 绑定账号的页面
        // 跳转到 绑定页面
      router.push({ name: "bind" , query: {...ret.error, "state": route.query.state } }) ;
    }
  })

})


</script>

<style scoped>

</style>